<?php


////////////                                                            >>>>>>>
////////////------加载运行时的文件(在非调试模式下编译后不再加载)---------------->>>>>>>>>
////////////                                                            >>>>>>>


////////////////////////////////定义了项目目录常量以及系统目录的常量/////////////////
if (!defined('TPCORE_PATH')) exit();
if(version_compare(PHP_VERSION,'5.2.0','<'))  die('require PHP > 5.2.0 !');


//配置项目的根目录 注意：这些路径设置 可在入口文件中重新定义 所有路径常量都必须以/ 结尾
defined('TPFRAMEWORK') or define('TPFRAMEWORK',APP_PATH."tpDebugMode/TpFramework/");


//////////////////////////系统核心目录结构定义////////////////////////////
defined('CORE_PATH') or define('CORE_PATH',TPCORE_PATH.'Lib/');
// 系统核心类库目录
defined('EXTEND_PATH') or define('EXTEND_PATH',TPCORE_PATH.'Extend/');
// 系统扩展目录
defined('MODE_PATH') or define('MODE_PATH',EXTEND_PATH.'Mode/');
// 模式扩展目录
defined('ENGINE_PATH') or define('ENGINE_PATH',EXTEND_PATH.'Engine/');
// 引擎扩展目录
defined('VENDOR_PATH') or define('VENDOR_PATH',EXTEND_PATH.'Vendor/');
// 第三方类库目录
defined('LIBRARY_PATH') or define('LIBRARY_PATH',EXTEND_PATH.'Library/');
// 扩展类库目录



/////////////////////////配置项目的目录结构的定义/////////////////////////
defined('COMMON_PATH') or define('COMMON_PATH',TPFRAMEWORK.'Common/'); //项目公共目录
defined('LIB_PATH') or define('LIB_PATH',    TPFRAMEWORK.'Lib/'); // 项目类库目录
defined('CONF_PATH') or define('CONF_PATH',  TPFRAMEWORK.'Conf/'); // 项目配置目录
defined('LANG_PATH') or define('LANG_PATH', TPFRAMEWORK.'Lang/'); // 项目语言包目录
defined('TMPL_PATH') or define('TMPL_PATH',TPFRAMEWORK.'Tpl/'); // 项目模板目录
defined('HTML_PATH') or define('HTML_PATH',TPFRAMEWORK.'Html/'); // 项目静态目录
defined('LOG_PATH') or define('LOG_PATH',  RUNTIME_PATH.'Logs/'); // 项目日志目录
defined('TEMP_PATH') or define('TEMP_PATH', RUNTIME_PATH.'Temp/'); // 项目缓存目录
defined('DATA_PATH') or define('DATA_PATH', RUNTIME_PATH.'Data/'); // 项目数据目录
defined('CACHE_PATH') or define('CACHE_PATH',   RUNTIME_PATH.'Cache/'); // 项目模板缓存目录


//////////////////////////加载系统编译核心全局函数/////////////////////////
require APP_PATH.'TpTool.php';

///////////////////////// 加载运行时所需文件,并负责自动目录生成/////////////
load_runtime_file();

///////////////////////// 记录加载文件时间//////////////////////////////
G('loadTime');

///////////////////////// 执行架构的入口文件////////////////////////
Think::Start();